home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Diamond Collection / The Diamond Collection (Software Vault)(Digital Impact).ISO / cdr38 / rdswal25.zip / RDSWALL.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1995-02-22  |  31KB  |  1,154 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 3.O1 (Encryption type I) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Boolean  BOOLEAN002
  21.     Integer  INTEGER001
  22.     Integer  INTEGER002
  23.     Integer  INTEGER003
  24.     Integer  INTEGER004
  25.     Integer  INTEGER005
  26.     Integer  INTEGER006
  27.     Integer  INTEGER007
  28.     Integer  INTEGER008
  29.     Integer  INTEGER009
  30.     Integer  INTEGER010
  31.     Integer  INTEGER011
  32.     Integer  INTEGER012
  33.     Integer  INTEGER013
  34.     Integer  INTEGER014
  35.     String   STRING001
  36.     String   STRING002
  37.     String   STRING003
  38.     String   STRING004
  39.     String   TSTRING005(9)
  40.     String   STRING006
  41.     String   STRING007
  42.     String   STRING008
  43.     String   STRING009
  44.     String   STRING010
  45.     String   STRING011
  46.     String   TSTRING012(4)
  47.     String   TSTRING013(4)
  48.     String   TSTRING014(4)
  49.     String   TSTRING015(4)
  50.     String   TSTRING016(4)
  51.     String   TSTRING017(4)
  52.     String   TSTRING018(4)
  53.     String   TSTRING019(4)
  54.     String   TSTRING020(4)
  55.     String   TSTRING021(22)
  56.     String   TSTRING022(4)
  57.     String   STRING023
  58.     String   TSTRING024(4)
  59.     String   TSTRING025(4)
  60.     String   STRING026
  61.     String   STRING027
  62.     String   STRING028
  63.     String   TSTRING029(5)
  64.     String   STRING030
  65.     String   STRING031
  66.     String   STRING032
  67.     String   STRING033
  68.     String   STRING034
  69.     String   STRING035
  70.     String   STRING036
  71.     String   STRING037
  72.     String   STRING038
  73.     String   TSTRING039(2)
  74.     String   STRING040
  75.     String   STRING041
  76.     String   STRING042
  77.     String   TSTRING043(17)
  78.     String   TSTRING044(4)
  79.  
  80. ;------------------------------------------------------------------------------
  81.  
  82.     Goto LABEL058
  83.     :LABEL001
  84.     STRING001 = ""
  85.     STRING002 = 1
  86.     INTEGER001 = 1
  87.     STRING003 = ReadLine(PCBDat(), 94)
  88.     STRING004 = Asc(Mid(STRING003, 5, 1))
  89.     If (Len(STRING004) < 2) STRING004 = "00" + STRING004
  90.     If (Len(STRING004) < 3) STRING004 = "0" + STRING004
  91.     STRING011 = GetToken()
  92.     STRING011 = Upper(STRING011)
  93.     BOOLEAN001 = 0
  94.     INTEGER014 = 0
  95.     STRING027 = Date()
  96.     STRING028 = Time()
  97.     Log " RDSWall.ppe v2.5 Began ■ " + STRING028 + " ", 0
  98.     :LABEL002
  99.     FOpen 1, PPEPath() + PPEName() + ".CFG", 0, 0
  100.     FDefIn 1
  101.     FDGet TSTRING005(INTEGER001)
  102.     :LABEL003
  103.     If (Ferr(1)) Goto LABEL004
  104.     Inc INTEGER001
  105.     FDGet TSTRING005(INTEGER001)
  106.     Goto LABEL003
  107.     :LABEL004
  108.     FClose 1
  109.     If (Upper(Left(TSTRING005(9), 9)) == "BETA TEST") Gosub LABEL048
  110.     STRING009 = Mid(TSTRING005(1), 1, 2)
  111.     STRING008 = Mid(TSTRING005(1), 3, 1)
  112.     STRING010 = Mid(TSTRING005(1), 4, 3)
  113.     STRING007 = Mid(TSTRING005(1), 7, 1)
  114.     STRING006 = Mid(TSTRING005(1), 8, 2)
  115.     If (Len(TSTRING005(1)) < 9) STRING002 = 2
  116.     If (TSTRING005(1) == "1111111111") STRING002 = 2
  117.     If (TSTRING005(1) == "1212121212") STRING002 = 2
  118.     If (TSTRING005(1) == "1010101010") STRING002 = 2
  119.     If (TSTRING005(1) == "0101010101") STRING002 = 2
  120.     If (STRING009 > "66") STRING002 = 2
  121.     If (STRING009 == "00") STRING002 = 2
  122.     If (Asc(STRING008) > 90) STRING002 = 2
  123.     If (Asc(STRING008) < 65) STRING002 = 2
  124.     If (STRING010 <> STRING004) STRING002 = 2
  125.     If (Asc(STRING007) > 90) STRING002 = 2
  126.     If (Asc(STRING007) < 65) STRING002 = 2
  127.     If (STRING006 <> Len(STRING003)) STRING002 = 2
  128.     :LABEL005
  129.     STRING028 = STRING028
  130.     GetUser
  131.     StartDisp 1
  132.     STRING003 = "@X09" + STRING003 + "@X07"
  133.     If (STRING002 == 2) STRING003 = "@X89UNREGISTERED BBS@X07"
  134.     If (TSTRING005(4) < 1) TSTRING005(4) = "1"
  135.     If (TSTRING005(4) > 3) TSTRING005(4) = "3"
  136.     If (TSTRING005(4) == "3") INTEGER004 = 3
  137.     If (TSTRING005(4) == "2") INTEGER004 = 2
  138.     If (TSTRING005(4) == "1") INTEGER004 = 1
  139.     INTEGER003 = TSTRING005(8)
  140.     If (STRING002 == 2) TSTRING005(5) = "@X04"
  141.     If (STRING002 == 2) TSTRING005(6) = "@X0F"
  142.     If (STRING002 == 2) TSTRING005(7) = "@X0E"
  143.     If ((STRING002 == 1) && (STRING011 == "/NOINTRO")) Then
  144.         Print "Loading RDSWall please wait....."
  145.         Delay 25
  146.     Else
  147.         Cls
  148.         PrintLn "@X04┌──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┐"
  149.         PrintLn "@X04└───┬@X0A██████▄@X04──┴@X0A██████▄@X04───@X0A▄█████▄@X04───@X0A█▄ █ ▄█@X04┴──@X0A▄█████▄@X04─┬─@X0A██@X04───┬──┴─@X0A██@X04┬──┴───┬──┘"
  150.         PrintLn "@X04┌───┴@X0A██@X04───@X0A██@X04──┬@X0A██@X04─┴─@X0A██@X04───@X0A██▄▄▄▄@X04┴───@X0A██▐█▌██@X04┬──@X0A██▄▄▄██@X04─┴─@X0A██@X04┬──┴──┬─@X0A██@X04┴──┬───┴──┐"
  151.         PrintLn "@X04└───┬@X0A██████@X04───┴@X0A██@X04─┬─@X0A██@X04────@X0A▀▀▀▀██@X04─@X07/\@X0A██▐█▌██@X04┴──@X0A██@X04──┴@X0A██@X04─┬─@X0A██@X04┴──┬──┴─@X0A██@X04┬──┴───┬──┘"
  152.         PrintLn "@X04┌───┴@X0A██@X04┬─@X0A▀██@X04─@X07/\@X0A██████▀@X04───@X0A▀█████▀@X07/||@X0A▀██▀██▀@X04┬──@X0A██@X04──┬@X0A██@X04─┴─@X0A███████@X04─┬─@X0A███████@X04──┴──┐"
  153.         PrintLn "@X04@X04└───┬──┴───┬@X07(,\@X04──@X07/,)\__@X04──@X07//@X04─@X07||//@X04┬@X07||@X04┴@X07\\@X04┬@X07\@X04──┴───┬──┴───┬──┴───┬──┴──@X0F╔══════╗@X04┬──┘"
  154.         PrintLn "@X04┌───┴──┬───┴@X07/@X04─┬───@X07/@X04──┬@X07/_//@X04──@X07|//@X04─┴@X07||@X04┬─@X07\\@X04─@X07\\@X04┬───┴──┬───┴──┬───┴──┬──@X0F║ @X0Av2.5 @X0F║@X04┴──┐"
  155.         PrintLn "@X04└───┬──┴───@X07(@_^_@)/@X04──┴─@X07/_@X04┬──@X07//@X04──┬@X07||@X04┴──@X07\\@X04──@X07\\@X04──┬──┴───┬──┴───┬──┴──@X0F╚══════╝@X04┬──┘"
  156.         PrintLn "@X04┌───┴──┬───┴@X07W//W_/@X04┴──┬──@X07/_@X04-@X07//@X04───┴@X07||@X04┬───@X07\\@X04─┬─@X07\\@X04┴──┬───┴──┬───┴──┬───┴──┬───┴──┐"
  157.         PrintLn "@X04└───┬──┴──@X07(//)@X04┴@X07|@X04──┬──┴───@X07///@X04┴───┬@X07||@X04┴──┬─@X07\\@X04┴───@X07\\@X04─┴───┬──┴───┬──┴───┬──┴───┬──┘"
  158.         PrintLn "@X04┌───┴──┬@X07(/@X04─@X07/)@X04─@X07_|_@X04─@X07/@X04──┬@X07)@X04──@X07//@X04─┬───┴@X07||@X04┬──┴──@X07\\@X04───@X07__\@X04┬───┴──┬───┴──┬───┴──┬───┴──┐"
  159.         PrintLn "@X04└───┬─@X07(//@X04─@X07/)@X04─@X07'/,_@X04─@X07_@X04─@X07_/@X04──@X07(@X04┬@X07;@X04─@X07-.@X04──┬@X07||@X04┴──┬@X07_@X04─@X07_\\.-~@X04──┴───┬─@X07.-~~~^-.@X04┴───┬──┴───┬──┘"
  160.         PrintLn "@X04┌───@X07((@X04─@X07//@X04─@X07))@X04──┬@X07{@X04──┴──┬──@X07_@X04┴──┬──@X07`-||.-~-.@X04──┬───┴──┬─@X07.~@X04┴──┬───┴─@X07`.@X04───┴──┬───┴──┐"
  161.         PrintLn "@X04└──@X07((@X04─@X07///@X04─@X07))@X04──┴─@X07\@X04─┬──┴─@X07/@X04─┬──┴───┬──┴───┬─@X07~-.@X04─@X07_@X04─@X07.-~@X04───┬──@X07.-~^-.@X04─┴@X07\@X04──┬──┴───┬──┘"
  162.         PrintLn "@X04┌──@X07((@X04─@X07//@X04─@X07))@X04┴──┬──@X07'.@X04──┬@X07{@X04──┴──┬───┴──@X07}@X04───┴──┬───┴──┬───┴─@X07/@X04┬───┴─@X07\@X04┬─@X07\@X04─┴──┬───┴──┐"
  163.         PrintLn "@X04└───@X07((/@X04┴@X07))@X04─┬──┴@X07.----~-.\@X04─┬──┴───@X07\-'@X04┴───┬──┴───┬──┴──@X07.~@X04──┴───┬──@X07\@X04──@X07`.@X04──@X07\^-.@X04┬──┘"
  164.         PrintLn "@X04┌───┴──┬───┴──@X07///.----..>@X04┴──┬@X07(@X04──┴@X07\@X04─┬───┴──┬───┴@X07_@X04─@X07-~@X04──┴──┬───┴──┬@X07`.@X04─┴@X07^-`@X04───@X07^-@X04_┐"
  165.         PrintLn "@X04└───┬──┴───┬──@X07///-._@X04─@X07_@X04─@X07_@X04─@X07_@X04─@X07_@X04┴@X07_@X04─@X07_}^ - - - - ~@X04──┬──┴───┬──┴───┬──┴@X07~--_..-~/.-~@X04─┘"
  166.         PrintLn "@X04┌───┴──┬─@X0F╔═════════════════════════════════════════════════════════╗@X04──┬───┴──┐"
  167.         PrintLn "@X04└───┬──┴─@X0F║                                                         ║@X04──┴───┬──┘"
  168.         PrintLn "@X04┌───┴──┬─@X0F╚═════════════════════════════════════════════════════════╝@X04──┬───┴──┐"
  169.         PrintLn "@X04└──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┘"
  170.         AnsiPos 13, 20
  171.         Print "@X0ERegistered to:  " + STRING003
  172.         If (Mid(TSTRING005(2), 1, 1) <> "Y") Goto LABEL010
  173.         FOpen 1, PPEPath() + "DISCLAIM.RDS", 0, 0
  174.         FDefIn 1
  175.         INTEGER001 = 0
  176.         FDGet TSTRING022(INTEGER001)
  177.         :LABEL006
  178.         If (Ferr(1)) Goto LABEL007
  179.         Inc INTEGER001
  180.         FDGet TSTRING022(INTEGER001)
  181.         Goto LABEL006
  182.         :LABEL007
  183.         FClose 1
  184.         INTEGER005 = Mid(TSTRING005(2), 3, 1)
  185.         For INTEGER002 = 1 To INTEGER005
  186.             TSTRING022(INTEGER002) = Mid(TSTRING022(INTEGER002), 1, 55)
  187.         Next
  188.         INTEGER006 = 12
  189.         If (INTEGER005 < 4) INTEGER006 = 13
  190.         If (INTEGER005 < 3) INTEGER006 = 14
  191.         AnsiPos 10, INTEGER006
  192.         Print TSTRING005(6) + "@X0F╔═════════════════════════════════════════════════════════╗"
  193.         For INTEGER002 = 1 To INTEGER005
  194.             AnsiPos 10, INTEGER002 + INTEGER006
  195.             Print TSTRING005(6) + "║ " + TSTRING005(7) + TSTRING022(INTEGER002) + TSTRING005(6) + " ║"
  196.         Next
  197.         AnsiPos 10, INTEGER002 + INTEGER006
  198.         Print TSTRING005(6) + "╚═════════════════════════════════════════════════════════╝"
  199.     Endif
  200.     If (Exist(PPEPath() + "WALLLANG" + LangExt())) Goto LABEL008
  201.     TSTRING043(0) = "English"
  202.     TSTRING043(1) = "Help,"
  203.     TSTRING043(2) = "Add to Wall,"
  204.     TSTRING043(3) = "Begin again,"
  205.     TSTRING043(4) = "Quit,"
  206.     TSTRING043(5) = "ENTER"
  207.     TSTRING043(6) = "Next Wall"
  208.     TSTRING043(7) = "Thank You!  Would you like to"
  209.     TSTRING043(8) = "or"
  210.     TSTRING043(9) = "PLEASE ENTER TEXT TO PUT ON WALL"
  211.     TSTRING043(10) = "ENTER YOUR TEXT"
  212.     TSTRING043(11) = "Lines MAX"
  213.     TSTRING043(12) = "ENTER BLANK LINE TO END"
  214.     TSTRING043(13) = "THE END"
  215.     Goto LABEL009
  216.     :LABEL008
  217.     FOpen 5, PPEPath() + "WALLLANG" + LangExt(), 0, 0
  218.     For INTEGER002 = 0 To 15
  219.         FGet 5, TSTRING043(INTEGER002)
  220.     Next
  221.     :LABEL009
  222.     For INTEGER002 = 1 To 4
  223.         TSTRING044(INTEGER002) = Left(TSTRING043(INTEGER002), 1)
  224.         TSTRING044(INTEGER002) = Upper(TSTRING044(INTEGER002))
  225.         TSTRING043(INTEGER002) = Mid(TSTRING043(INTEGER002), 2, Len(TSTRING043(INTEGER002)))
  226.     Next
  227.     TSTRING043(16) = TSTRING043(10) + "  (" + TSTRING005(4) + " " + TSTRING043(11) + ")  " + TSTRING043(12)
  228.     TSTRING043(17) = TSTRING043(14) + " " + STRING003 + ", " + TSTRING043(15) + "..."
  229.     If (STRING011 == "/NOINTRO") Goto LABEL011
  230.     :LABEL010
  231.     AnsiPos 1, 23
  232.     Wait
  233.     :LABEL011
  234.     If (Exist(PPEPath() + "RDSWALL.DAT")) Goto LABEL012
  235.     FCreate 1, PPEPath() + "RDSWALL.DAT", 1, 0
  236.     FPutLn 1, "This BBS is the best!  And so is this program!  WOW!"
  237.     FPutLn 1, "*** RDSWALL MISSING .DAT FILE  " + Chr(254) + "  " + STRING027 + "  " + Chr(254) + "  " + STRING028 + " ***"
  238.     FClose 1
  239.     FOpen 1, PPEPath() + "RDSWALL.DAT", 2, 0
  240.     Goto LABEL013
  241.     :LABEL012
  242.     FOpen 1, PPEPath() + "RDSWALL.DAT", 2, 0
  243.     :LABEL013
  244.     If (STRING002 == 2) Then
  245.         If (Random(5) + 1 == 2) Then
  246.             FClose 1
  247.             FAppend 1, PPEPath() + "RDSWALL.DAT", 1, 0
  248.             INTEGER013 = Random(8) + 1
  249.             If (INTEGER013 == 1) Then
  250.                 FPutLn 1, "Hey SysOp, you should really register this!"
  251.                 Gosub LABEL047
  252.                 Goto LABEL018
  253.             Endif
  254.             If (INTEGER013 == 2) Then
  255.                 If (TSTRING005(4) >= 2) Then
  256.                     FPutLn 1, "This is the first language aware User Wall I have ever"
  257.                     FPutLn 1, "seen.  This is really cool!"
  258.                     Gosub LABEL047
  259.                     Goto LABEL018
  260.                     Goto LABEL014
  261.                 Endif
  262.                 FPutLn 1, "This is the only language aware Wall I've ever seen!"
  263.                 Gosub LABEL047
  264.                 Goto LABEL018
  265.             Endif
  266.             :LABEL014
  267.             If (INTEGER013 == 3) Then
  268.                 FPutLn 1, "What do you think, should the SysOp Register this?"
  269.                 Gosub LABEL047
  270.                 Goto LABEL018
  271.             Endif
  272.             If (INTEGER013 == 4) Then
  273.                 If (TSTRING005(4) >= 3) Then
  274.                     FPutLn 1, "Did you know that the distance measured between your stretched"
  275.                     FPutLn 1, "arms is your approximate height?  Oh, by the way..  Hey SysOp!"
  276.                     FPutLn 1, "REGISTER THIS THING!"
  277.                     Gosub LABEL047
  278.                     Goto LABEL018
  279.                     Goto LABEL015
  280.                 Endif
  281.                 If (TSTRING005(4) >= 2) Then
  282.                     FPutLn 1, "Did you know that the distance measured between your stretched"
  283.                     FPutLn 1, "arms is your approx. height?  Oh, hey sysop! REGISTER THIS THING!"
  284.                     Gosub LABEL047
  285.                     Goto LABEL018
  286.                     Goto LABEL015
  287.                 Endif
  288.                 FPutLn 1, "Hey SysOp!  Register this thing!"
  289.                 Gosub LABEL047
  290.                 Goto LABEL018
  291.             Endif
  292.             :LABEL015
  293.             If (INTEGER013 == 5) Then
  294.                 FPutLn 1, "I love this program, but I hate that REGISTRATION Delay!"
  295.                 Gosub LABEL047
  296.                 Goto LABEL018
  297.             Endif
  298.             If (INTEGER013 == 6) Then
  299.                 If (TSTRING005(4) >= 2) Then
  300.                     FPutLn 1, "I heard this thing only costs $5.00 to register.  If that's"
  301.                     FPutLn 1, "the case you should really register this thing SysOp!"
  302.                     Gosub LABEL047
  303.                     Goto LABEL018
  304.                     Goto LABEL016
  305.                 Endif
  306.                 FPutLn 1, "Hey SysOp!  Send in that $5 and register this thing!"
  307.                 Gosub LABEL047
  308.                 Goto LABEL018
  309.             Endif
  310.             :LABEL016
  311.             If (INTEGER013 == 7) Then
  312.                 If (TSTRING005(4) >= 2) Then
  313.                     FPutLn 1, "Hey you guys, I think we should pool together and help the"
  314.                     FPutLn 1, "SysOp register this thing!  Who besides me will help out?"
  315.                     Gosub LABEL047
  316.                     Goto LABEL018
  317.                     Goto LABEL017
  318.                 Endif
  319.                 FPutLn 1, "Some of us should help the SysOp register this thing!"
  320.                 Gosub LABEL047
  321.                 Goto LABEL018
  322.             Endif
  323.             :LABEL017
  324.             If (INTEGER013 == 8) Then
  325.                 If (TSTRING005(4) >= 2) Then
  326.                     FPutLn 1, "This little wall program is REALLY cool. I think the UNREGISTERED"
  327.                     FPutLn 1, "delay sign at the end should be added to the program somewhere..."
  328.                     Gosub LABEL047
  329.                     Goto LABEL018
  330.                 Endif
  331.                 FPutLn 1, "This is cool!  That UNREGISTERED face is annoying but cool!"
  332.                 Gosub LABEL047
  333.             Endif
  334.         Endif
  335.     Endif
  336.     :LABEL018
  337.     FCloseAll
  338.     FOpen 1, PPEPath() + "RDSWALL.DAT", 0, 0
  339.     INTEGER007 = 6
  340.     INTEGER008 = 2
  341.     Gosub LABEL040
  342.     :LABEL019
  343.     BOOLEAN002 = 0
  344.     INTEGER002 = 1
  345.     BOOLEAN001 = 0
  346.     :LABEL020
  347.     If (BOOLEAN001) Goto LABEL021
  348.     FGet 1, TSTRING025(INTEGER002)
  349.     If (Left(TSTRING025(INTEGER002), 3) == "***") BOOLEAN001 = 1
  350.     If (Ferr(1)) Then
  351.         AnsiPos INTEGER007, INTEGER008
  352.         If (GetY() < 20) Then
  353.             Print TSTRING005(6) + "╔═══════════════════════════════════════════════════════════════════╗"
  354.             AnsiPos INTEGER007, INTEGER008 + 1
  355.             Print TSTRING005(6) + "║  ░▒▒▓▓███▓▓▒▒░                                     ░▒▒▓▓███▓▓▒▒░  ║"
  356.             AnsiPos INTEGER007, INTEGER008 + 2
  357.             Print TSTRING005(6) + "╚═══════════════════════════════════════════════════════════════════╝"
  358.             INTEGER006 = 40 - Len(TSTRING043(13)) / 2
  359.             AnsiPos INTEGER006, INTEGER008 + 1
  360.             Print TSTRING005(7) + TSTRING043(13)
  361.             BOOLEAN002 = 1
  362.             Goto LABEL031
  363.         Else
  364.         Else
  365.         Endif
  366.         Inc INTEGER002
  367.         Goto LABEL020
  368.         :LABEL021
  369.         Inc INTEGER014
  370.         If (INTEGER014 > 1) Gosub LABEL040
  371.         INTEGER007 = 6
  372.         INTEGER008 = 2
  373.         INTEGER010 = 1
  374.         Goto LABEL024
  375.         :LABEL022
  376.         BOOLEAN002 = 0
  377.         INTEGER002 = 1
  378.         BOOLEAN001 = 0
  379.         :LABEL023
  380.         If (BOOLEAN001) Goto LABEL024
  381.         FGet 1, TSTRING025(INTEGER002)
  382.         If (Left(TSTRING025(INTEGER002), 3) == "***") BOOLEAN001 = 1
  383.         If (Ferr(1)) Then
  384.             AnsiPos INTEGER007, INTEGER008
  385.             If (GetY() < 20) Then
  386.                 Print TSTRING005(6) + "╔═══════════════════════════════════════════════════════════════════╗"
  387.                 AnsiPos INTEGER007, INTEGER008 + 1
  388.                 Print TSTRING005(6) + "║  ░▒▒▓▓███▓▓▒▒░                                     ░▒▒▓▓███▓▓▒▒░  ║"
  389.                 AnsiPos INTEGER007, INTEGER008 + 2
  390.                 Print TSTRING005(6) + "╚═══════════════════════════════════════════════════════════════════╝"
  391.                 INTEGER006 = 40 - Len(TSTRING043(13)) / 2
  392.                 AnsiPos INTEGER006, INTEGER008 + 1
  393.                 Print TSTRING005(7) + TSTRING043(13)
  394.                 BOOLEAN002 = 1
  395.                 Goto LABEL031
  396.             Else
  397.             Else
  398.             Endif
  399.             Inc INTEGER002
  400.             Goto LABEL023
  401.             :LABEL024
  402.             For INTEGER009 = 1 To INTEGER002
  403.                 If (Len(TSTRING025(INTEGER009)) > 65) TSTRING025(INTEGER009) = Left(TSTRING025(INTEGER009), 65)
  404.                 AnsiPos INTEGER007, INTEGER008
  405.                 Print TSTRING005(6) + "╔═══════════════════════════════════════════════════════════════════╗"
  406.                 If (Left(TSTRING025(INTEGER009), 3) == "***") Break
  407.                 AnsiPos INTEGER007, INTEGER008 + INTEGER009
  408.                 Print TSTRING005(6) + "║                                                                   ║"
  409.                 INTEGER006 = 40 - Len(TSTRING025(INTEGER009)) / 2
  410.                 AnsiPos INTEGER006, INTEGER008 + INTEGER009
  411.                 Print TSTRING005(7) + TSTRING025(INTEGER009)
  412.             Next
  413.             AnsiPos INTEGER007, INTEGER008 + INTEGER009
  414.             Print TSTRING005(6) + "╚═══════════════════════════════════════════════════════════════════╝"
  415.             If (INTEGER003 <= U_Sec) Then
  416.                 STRING042 = Mid(TSTRING005(6), 4, 1)
  417.                 STRING042 = Asc(STRING042)
  418.                 If (STRING042 >= 65) STRING042 = STRING042 - 15
  419.                 If (STRING042 >= 56) STRING042 = STRING042 - 8
  420.                 STRING042 = Chr(STRING042)
  421.                 AnsiPos 13, INTEGER008 + INTEGER009
  422.                 TSTRING025(0) = Right(TSTRING025(INTEGER009), 28)
  423.                 Print TSTRING005(6) + "[@X" + STRING042 + "0" + Mid(TSTRING025(0), 3, 9) + " ■                                  ■ " + Mid(TSTRING025(0), 17, 5) + " " + TSTRING005(6) + "]"
  424.                 TSTRING025(0) = Mid(TSTRING025(INTEGER009), 4, Len(TSTRING025(INTEGER009)) - 32)
  425.                 INTEGER006 = 40 - Len(TSTRING025(0)) / 2
  426.                 AnsiPos INTEGER006, INTEGER008 + INTEGER009
  427.                 Print "@X" + STRING042 + "0" + TSTRING025(0)
  428.             Endif
  429.             INTEGER008 = INTEGER008 + INTEGER009 + 2
  430.             Inc INTEGER011
  431.             If (GetY() > 19 - TSTRING005(4)) Then
  432.                 Goto LABEL026
  433.             Else
  434.                 Goto LABEL022
  435.             Endif
  436.             :LABEL025
  437.             If (STRING002 == 2) Goto LABEL041
  438.             Goto LABEL042
  439.             :LABEL026
  440.             BOOLEAN001 = 0
  441.             AnsiPos 1, 23
  442.             Print "@X07                                                                              "
  443.             AnsiPos 1, 23
  444.             Print TSTRING005(6) + "(" + TSTRING005(7) + TSTRING044(1) + TSTRING005(6) + ")" + TSTRING043(1) + "(" + TSTRING005(7) + TSTRING044(2) + TSTRING005(6) + ")" + TSTRING043(2) + "(" + TSTRING005(7) + TSTRING044(3) + TSTRING005(6) + ")" + TSTRING043(3) + "(" + TSTRING005(7) + TSTRING044(4) + TSTRING005(6) + ")" + TSTRING043(4) + "<" + TSTRING005(7) + TSTRING043(5) + TSTRING005(6) + ">=" + TSTRING043(6) + "?"
  445.             :LABEL027
  446.             If (BOOLEAN001) Goto LABEL030
  447.             STRING023 = Inkey()
  448.             STRING023 = Upper(STRING023)
  449.             If (STRING023 == TSTRING044(1)) Then
  450.                 SaveScrn
  451.                 DispFile PPEPath() + "WALLHELP", 1 + 4
  452.                 Log "æ USER EXECUTED HELP FILE æ", 0
  453.                 Wait
  454.                 RestScrn
  455.                 Goto LABEL026
  456.             Endif
  457.             If (STRING023 == TSTRING044(4)) Then
  458.                 BOOLEAN001 = 1
  459.                 FClose 1
  460.                 INTEGER012 = INTEGER011
  461.                 Goto LABEL025
  462.             Endif
  463.             If (STRING023 == TSTRING044(3)) Then
  464.                 FClose 1
  465.                 FOpen 1, PPEPath() + "RDSWALL.DAT", 0, 0
  466.                 INTEGER011 = 0
  467.                 Goto LABEL019
  468.             Endif
  469.             If (STRING023 == TSTRING044(2)) Then
  470.                 INTEGER012 = INTEGER011 + 1
  471.                 BOOLEAN001 = 1
  472.                 Gosub LABEL037
  473.                 FClose 1
  474.                 AnsiPos 1, 23
  475.                 Print TSTRING005(6) + TSTRING043(7) + " (" + TSTRING005(7) + TSTRING044(3) + TSTRING005(6) + ")" + Mid(TSTRING043(3), 1, Len(TSTRING043(3)) - 2) + " " + TSTRING043(8) + " (" + TSTRING005(7) + TSTRING044(4) + TSTRING005(6) + ")" + Mid(TSTRING043(4), 1, Len(TSTRING043(4)) - 2) + "?"
  476.                 BOOLEAN001 = 0
  477.                 :LABEL028
  478.                 If (BOOLEAN001) Goto LABEL029
  479.                 STRING023 = Inkey()
  480.                 STRING023 = Upper(STRING023)
  481.                 If (STRING023 == TSTRING044(4)) Goto LABEL025
  482.                 If (STRING023 == TSTRING044(3)) Then
  483.                     FOpen 1, PPEPath() + "RDSWALL.DAT", 0, 0
  484.                     INTEGER011 = 0
  485.                     Goto LABEL019
  486.                 Endif
  487.                 Goto LABEL028
  488.             Endif
  489.             :LABEL029
  490.             If (STRING023 == Chr(13)) BOOLEAN001 = 1
  491.             Goto LABEL027
  492.             :LABEL030
  493.             Goto LABEL019
  494.         Endif
  495.     Endif
  496.     :LABEL031
  497.     BOOLEAN001 = 0
  498.     If (BOOLEAN002) Goto LABEL032
  499.     AnsiPos 1, 23
  500.     Print TSTRING005(6) + " ░▒▒▓▓███▓▓▒▒░                                                  ░▒▒▓▓███▓▓▒▒░"
  501.     INTEGER006 = 40 - Len(TSTRING043(13)) / 2
  502.     AnsiPos INTEGER006, 23
  503.     Print TSTRING043(13)
  504.     Delay 35
  505.     :LABEL032
  506.     AnsiPos 1, 23
  507.     Print "                                                                              "
  508.     AnsiPos 1, 23
  509.     Print TSTRING005(6) + "(" + TSTRING005(7) + TSTRING044(1) + TSTRING005(6) + ")" + TSTRING043(1) + "(" + TSTRING005(7) + TSTRING044(2) + TSTRING005(6) + ")" + TSTRING043(2) + "(" + TSTRING005(7) + TSTRING044(3) + TSTRING005(6) + ")" + TSTRING043(3) + "(" + TSTRING005(7) + TSTRING044(4) + TSTRING005(6) + ")" + Mid(TSTRING043(4), 1, Len(TSTRING043(4)) - 2) + "?"
  510.     :LABEL033
  511.     If (BOOLEAN001) Goto LABEL036
  512.     STRING023 = Inkey()
  513.     STRING023 = Upper(STRING023)
  514.     If (STRING023 == TSTRING044(1)) Then
  515.         SaveScrn
  516.         DispFile PPEPath() + "WALLHELP", 1 + 4
  517.         Wait
  518.         RestScrn
  519.         Goto LABEL032
  520.     Endif
  521.     If (STRING023 == TSTRING044(4)) Then
  522.         BOOLEAN001 = 1
  523.         FClose 1
  524.         INTEGER012 = INTEGER011
  525.         Goto LABEL025
  526.     Endif
  527.     If (STRING023 == TSTRING044(3)) Then
  528.         FClose 1
  529.         FOpen 1, PPEPath() + "RDSWALL.DAT", 0, 0
  530.         INTEGER011 = 0
  531.         Goto LABEL019
  532.     Endif
  533.     If (STRING023 == TSTRING044(2)) Then
  534.         INTEGER012 = INTEGER011 + 1
  535.         BOOLEAN001 = 1
  536.         Gosub LABEL037
  537.         FClose 1
  538.         AnsiPos 1, 23
  539.         Print TSTRING005(6) + TSTRING043(7) + " (" + TSTRING005(7) + TSTRING044(3) + TSTRING005(6) + ")" + Mid(TSTRING043(3), 1, Len(TSTRING043(3)) - 2) + " " + TSTRING043(8) + " (" + TSTRING005(7) + TSTRING044(4) + TSTRING005(6) + ")" + Mid(TSTRING043(4), 1, Len(TSTRING043(4)) - 2) + "?"
  540.         BOOLEAN001 = 0
  541.         :LABEL034
  542.         If (BOOLEAN001) Goto LABEL035
  543.         STRING023 = Inkey()
  544.         STRING023 = Upper(STRING023)
  545.         If (STRING023 == TSTRING044(4)) Goto LABEL025
  546.         If (STRING023 == TSTRING044(3)) Then
  547.             FOpen 1, PPEPath() + "RDSWALL.DAT", 0, 0
  548.             INTEGER011 = 0
  549.             Goto LABEL019
  550.         Endif
  551.         Goto LABEL034
  552.     Endif
  553.     :LABEL035
  554.     Goto LABEL033
  555.     :LABEL036
  556.     Goto LABEL031
  557.     :LABEL037
  558.     For INTEGER002 = 1 To INTEGER004
  559.         TSTRING024(INTEGER002) = ""
  560.     Next
  561.     Gosub LABEL040
  562.     AnsiPos 6, 19
  563.     Print TSTRING005(6) + "╔═══════════════════════════════════════════════════════════════════╗"
  564.     AnsiPos 6, 20
  565.     Print TSTRING005(6) + "║                                                                   ║"
  566.     If (TSTRING005(4) == "1") Then
  567.         INTEGER006 = 40 - Len(TSTRING043(9)) / 2
  568.         AnsiPos INTEGER006, 20
  569.         Print TSTRING005(7) + TSTRING043(9)
  570.     Else
  571.         INTEGER006 = 40 - Len(TSTRING043(16)) / 2
  572.         AnsiPos INTEGER006, 20
  573.         Print TSTRING005(7) + TSTRING043(16)
  574.     Endif
  575.     AnsiPos 6, 21
  576.     Print TSTRING005(6) + "╚═══════════════════════════════════════════════════════════════════╝"
  577.     INTEGER002 = 0
  578.     BOOLEAN001 = 0
  579.     AnsiPos 6, 9
  580.     Print TSTRING005(6) + "╔═══════════════════════════════════════════════════════════════════╗"
  581.     :LABEL038
  582.     If (BOOLEAN001) Goto LABEL039
  583.     Inc INTEGER002
  584.     AnsiPos 6, 9 + INTEGER002
  585.     Print TSTRING005(6) + "║                                                                   ║"
  586.     AnsiPos 6, 10 + INTEGER002
  587.     Print TSTRING005(6) + "╚═══════════════════════════════════════════════════════════════════╝"
  588.     AnsiPos 8, 9 + INTEGER002
  589.     If (INTEGER002 == TSTRING005(4)) Then
  590.         InputStr "_", TSTRING024(INTEGER002), TSTRING005(7), 65, Mask_Ascii(), 2 + 4
  591.     Else
  592.         InputStr "_", TSTRING024(INTEGER002), TSTRING005(7), 65, Mask_Ascii(), 2 + 4 + 512 + 256
  593.     Endif
  594.     If (TSTRING024(INTEGER002) == "") BOOLEAN001 = 1
  595.     If (INTEGER002 == INTEGER004) BOOLEAN001 = 1
  596.     Goto LABEL038
  597.     :LABEL039
  598.     If (TSTRING024(1) == "") Then
  599.         INTEGER012 = INTEGER012 - 1
  600.         Return
  601.     Endif
  602.     FClose 1
  603.     FAppend 3, PPEPath() + "RDSWALL.DAT", 1, 0
  604.     If (INTEGER002 > INTEGER004) INTEGER002 = INTEGER004
  605.     For INTEGER006 = 1 To INTEGER002
  606.         If (TSTRING024(INTEGER006) == "") Then
  607.             Continue
  608.         Endif
  609.         FPutLn 3, TSTRING024(INTEGER006)
  610.     Next
  611.     FPutLn 3, "*** " + U_Name() + "  " + Chr(254) + "  " + STRING027 + "  " + Chr(254) + "  " + STRING028 + " ***"
  612.     FClose 3
  613.     STRING028 = Time()
  614.     Log "√  User wrote on wall!   ■ " + STRING028 + " √", 0
  615.     Return
  616.     :LABEL040
  617.     If (Ferr(1)) Goto LABEL031
  618.     Cls
  619.     PrintLn TSTRING005(5) + "┌──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┐"
  620.     PrintLn TSTRING005(5) + "└───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┘"
  621.     PrintLn TSTRING005(5) + "┌───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┐"
  622.     PrintLn TSTRING005(5) + "└───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┘"
  623.     PrintLn TSTRING005(5) + "┌───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┐"
  624.     PrintLn TSTRING005(5) + "└───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┘"
  625.     PrintLn TSTRING005(5) + "┌───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┐"
  626.     PrintLn TSTRING005(5) + "└───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┘"
  627.     PrintLn TSTRING005(5) + "┌───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┐"
  628.     PrintLn TSTRING005(5) + "└───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┘"
  629.     PrintLn TSTRING005(5) + "┌───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┐"
  630.     PrintLn TSTRING005(5) + "└───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┘"
  631.     PrintLn TSTRING005(5) + "┌───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┐"
  632.     PrintLn TSTRING005(5) + "└───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┘"
  633.     PrintLn TSTRING005(5) + "┌───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┐"
  634.     PrintLn TSTRING005(5) + "└───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┘"
  635.     PrintLn TSTRING005(5) + "┌───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┐"
  636.     PrintLn TSTRING005(5) + "└───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┘"
  637.     PrintLn TSTRING005(5) + "┌───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┐"
  638.     PrintLn TSTRING005(5) + "└───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┴───┬──┘"
  639.     PrintLn TSTRING005(5) + "┌───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┬───┴──┐"
  640.     PrintLn TSTRING005(5) + "└──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┘"
  641.     INTEGER008 = 2
  642.     Return
  643.     :LABEL041
  644.     Cls
  645.     TSTRING021(0) = "@X0C               __--~~~~~~~~~--__                                         "
  646.     TSTRING021(1) = "            _-~                 ~-_                                      "
  647.     TSTRING021(2) = "         _/~               @X8F\ @X0F__ @X8F/@X0C  ~\_         @X0DRDSWall v2.5  Presented by: "
  648.     TSTRING021(3) = "@X0C        |                   )__)      |          @X0ARed Dragon Software Inc "
  649.     TSTRING021(4) = "@X0C   _   |                   @X8F/    \@X0C      |   _          @X0ASupport BBS:       "
  650.     TSTRING021(5) = "@X0C  /(  | |                             | |  )\   @X0AThe Realm of Delirium BBS"
  651.     TSTRING021(6) = "@X0C |_ \ |/    __~~---___   ___---~~__    \| / _|      @X0A(@X0B806@X0A) @X0B935@X0A-@X0B4760@X07      "
  652.     TSTRING021(7) = "@X0C|  \ \| _____ ~~~---__~|~__---~~~ _____ |/ /  | "
  653.     TSTRING021(8) = "|   |(~ (   @X0Eσ@X0C~~~---___) (___---~~~@X0E∞@X0C   ) ~)|   | "
  654.     TSTRING021(9) = "| -||~ \~-___---~~_/     \_~~---___-~/   ~||- | "
  655.     TSTRING021(10) = " |  /~   ~ __---~~~  /   \  ~~~---__ ~   ~\  |  "
  656.     TSTRING021(11) = "  \|              _ _-' '-_ _              |/   "
  657.     TSTRING021(12) = "  |             /~ (       ) ~\             |   "
  658.     TSTRING021(13) = "   |           /    ~-_ _-~    \           |    "
  659.     TSTRING021(14) = "    \         /        ~        \         /     "
  660.     TSTRING021(15) = "      \  ~\ |         ____        | /~ /~        @X8F @X0EUnregistered Delay @X8F@X07"
  661.     TSTRING021(16) = "@X0C        |    | ,_--~~,   ,~~--_, |    |         "
  662.     TSTRING021(17) = "         |   | '      ~~~~     ' |   |       @X02UnRegistered Evaluation Copy!"
  663.     TSTRING021(18) = "@X0C          |   \                 /   |         @X02Please Encourage your SysOp  "
  664.     TSTRING021(19) = "@X0C           ~-_                   _-~         @X02to Participate in @X0EREGISTERING@X07 "
  665.     TSTRING021(20) = "@X0C              ~-_             _-~               "
  666.     TSTRING021(21) = "                  '-___-~-___-'                 "
  667.     For INTEGER002 = 0 To 21
  668.         PrintLn TSTRING021(INTEGER002)
  669.     Next
  670.     TSTRING012(1) = "@X09  ▄▄███@X07 "
  671.     TSTRING012(2) = "@X09    ███@X07 "
  672.     TSTRING012(3) = "@X09    ███@X07 "
  673.     TSTRING012(4) = "@X09  ▄▄███▄@X07"
  674.     TSTRING013(1) = "@X06  ▄█▀▀█▄@X07"
  675.     TSTRING013(2) = "@X06  ▀ ▄▄█▀@X07"
  676.     TSTRING013(3) = "@X06  ▄█▀  ▄@X07"
  677.     TSTRING013(4) = "@X06  ██▄▄██@X07"
  678.     TSTRING014(1) = "@X05  ▄█▀▀█▄@X07"
  679.     TSTRING014(2) = "@X05  ▀ ▄▄█▀@X07"
  680.     TSTRING014(3) = "@X05  █▄  ██@X07"
  681.     TSTRING014(4) = "@X05   ▀▀▀▀ @X07"
  682.     TSTRING015(1) = "@X04  ██  ██@X07"
  683.     TSTRING015(2) = "@X04  ▀█████@X07"
  684.     TSTRING015(3) = "@X04      ██@X07"
  685.     TSTRING015(4) = "@X04      ██@X07"
  686.     TSTRING016(1) = "@X03  ██▀▀▀█@X07"
  687.     TSTRING016(2) = "@X03  ██▄▄▄ @X07"
  688.     TSTRING016(3) = "@X03   ▀▀▀██@X07"
  689.     TSTRING016(4) = "@X03  █▄▄▄██@X07"
  690.     TSTRING017(1) = "@X02  ██▀▀▀█@X07"
  691.     TSTRING017(2) = "@X02  ██   ▀@X07"
  692.     TSTRING017(3) = "@X02  ██▀▀▀█@X07"
  693.     TSTRING017(4) = "@X02  █▄▄▄▄█@X07"
  694.     TSTRING018(1) = "@X01  ██████@X07"
  695.     TSTRING018(2) = "@X01  ▀   ▄█@X07"
  696.     TSTRING018(3) = "@X01    ▄█▀ @X07"
  697.     TSTRING018(4) = "@X01   ██   @X07"
  698.     TSTRING019(1) = "@X0F  █▀▀▀▀█@X07"
  699.     TSTRING019(2) = "@X0F  ▀█▄▄█▀@X07"
  700.     TSTRING019(3) = "@X0F  ██▀▀██@X07"
  701.     TSTRING019(4) = "@X0F  █▄▄▄▄█@X07"
  702.     TSTRING020(1) = "@X0C  █▀▀▀▀█@X07"
  703.     TSTRING020(2) = "@X0C  █▄▄▄██@X07"
  704.     TSTRING020(3) = "@X0C  ▄   ██@X07"
  705.     TSTRING020(4) = "@X0C  █▄▄▄██@X07"
  706.     AnsiPos 55, 10
  707.     Print TSTRING020(1)
  708.     AnsiPos 55, 11
  709.     Print TSTRING020(2)
  710.     AnsiPos 55, 12
  711.     Print TSTRING020(3)
  712.     AnsiPos 55, 13
  713.     Print TSTRING020(4)
  714.     Delay 20
  715.     AnsiPos 55, 10
  716.     Print TSTRING019(1)
  717.     AnsiPos 55, 11
  718.     Print TSTRING019(2)
  719.     AnsiPos 55, 12
  720.     Print TSTRING019(3)
  721.     AnsiPos 55, 13
  722.     Print TSTRING019(4)
  723.     Delay 20
  724.     AnsiPos 55, 10
  725.     Print TSTRING018(1)
  726.     AnsiPos 55, 11
  727.     Print TSTRING018(2)
  728.     AnsiPos 55, 12
  729.     Print TSTRING018(3)
  730.     AnsiPos 55, 13
  731.     Print TSTRING018(4)
  732.     Delay 20
  733.     AnsiPos 55, 10
  734.     Print TSTRING017(1)
  735.     AnsiPos 55, 11
  736.     Print TSTRING017(2)
  737.     AnsiPos 55, 12
  738.     Print TSTRING017(3)
  739.     AnsiPos 55, 13
  740.     Print TSTRING017(4)
  741.     Delay 20
  742.     AnsiPos 55, 10
  743.     Print TSTRING016(1)
  744.     AnsiPos 55, 11
  745.     Print TSTRING016(2)
  746.     AnsiPos 55, 12
  747.     Print TSTRING016(3)
  748.     AnsiPos 55, 13
  749.     Print TSTRING016(4)
  750.     Delay 20
  751.     AnsiPos 56, 10
  752.     Print TSTRING015(1)
  753.     AnsiPos 56, 11
  754.     Print TSTRING015(2)
  755.     AnsiPos 56, 12
  756.     Print TSTRING015(3)
  757.     AnsiPos 56, 13
  758.     Print TSTRING015(4)
  759.     Delay 20
  760.     AnsiPos 56, 10
  761.     Print TSTRING014(1)
  762.     AnsiPos 56, 11
  763.     Print TSTRING014(2)
  764.     AnsiPos 56, 12
  765.     Print TSTRING014(3)
  766.     AnsiPos 56, 13
  767.     Print TSTRING014(4)
  768.     Delay 20
  769.     AnsiPos 56, 10
  770.     Print TSTRING013(1)
  771.     AnsiPos 56, 11
  772.     Print TSTRING013(2)
  773.     AnsiPos 56, 12
  774.     Print TSTRING013(3)
  775.     AnsiPos 56, 13
  776.     Print TSTRING013(4)
  777.     Delay 20
  778.     AnsiPos 56, 10
  779.     Print TSTRING012(1)
  780.     AnsiPos 56, 11
  781.     Print TSTRING012(2)
  782.     AnsiPos 56, 12
  783.     Print TSTRING012(3)
  784.     AnsiPos 56, 13
  785.     Print TSTRING012(4)
  786.     Delay 20
  787.     AnsiPos 56, 10
  788.     Print "  ▄  ▄  "
  789.     AnsiPos 56, 11
  790.     Print "   ▄▄   "
  791.     AnsiPos 56, 12
  792.     Print "█▄▄  ▄▄█"
  793.     AnsiPos 56, 13
  794.     Print "  ▀▀▀▀  "
  795.     Delay 20
  796.     :LABEL042
  797.     FCloseAll
  798.     STRING028 = Time()
  799.     Log " RDSWall.ppe v2.5 Ended ■ " + STRING028 + " ", 0
  800.     AnsiPos 1, 23
  801.     Print "                                                                               "
  802.     AnsiPos 1, 23
  803.     Print TSTRING043(17)
  804.     If (TSTRING005(3) < INTEGER012) Then
  805.         Copy PPEPath() + "RDSWALL.DAT", PPEPath() + "WALLDAT.BAK"
  806.         FOpen 1, PPEPath() + "WALLDAT.BAK", 0, 0
  807.         FCreate 2, PPEPath() + "RDSWALL.DAT", 1, 0
  808.         INTEGER012 = INTEGER012 - TSTRING005(3)
  809.         For INTEGER002 = 1 To INTEGER012
  810.             BOOLEAN001 = 0
  811.             :LABEL043
  812.             If (BOOLEAN001) Continue
  813.             FGet 1, STRING026
  814.             If (Left(STRING026, 3) == "***") BOOLEAN001 = 1
  815.             Goto LABEL043
  816.         Next
  817.         :LABEL044
  818.         If (Ferr(1)) Goto LABEL046
  819.         FGet 1, STRING026
  820.         If (STRING026 == "") Goto LABEL045
  821.         FPutLn 2, STRING026
  822.         :LABEL045
  823.         Goto LABEL044
  824.         :LABEL046
  825.         FCloseAll
  826.     Endif
  827.     If (Exist(PPEPath() + "WALLDAT.BAK")) Delete PPEPath() + "WALLDAT.BAK"
  828.     For INTEGER002 = 1 To 80 - Len(TSTRING043(17))
  829.         Print "."
  830.         Delay 2
  831.     Next
  832.     Cls
  833.     Stop
  834.     :LABEL047
  835.     FPutLn 1, "*** INTERNAL RDSWALL  " + Chr(254) + "  " + STRING027 + "  " + Chr(254) + "  " + STRING028 + " ***"
  836.     FClose 1
  837.     Return
  838.     :LABEL048
  839.     TSTRING039(1) = "RDSWall v2.0ß Beta Test Configuration File"
  840.     TSTRING039(2) = "φ √    ╔   φ     ¥                     Γ¥æ    Γ        ■    RDSWALL  ╔        æ      √       ╗Γ          │  Γ φ φ    æ   Γ αα         │  æα  │   RDSWALLα      α        RED DRAGON SO"
  841.     If (!Exist(PPEPath() + "RDSWALL.BTA")) Return
  842.     FOpen 1, PPEPath() + "RDSWALL.BTA", 0, 0
  843.     For INTEGER002 = 1 To 5
  844.         FGet 1, TSTRING029(INTEGER002)
  845.     Next
  846.     FClose 1
  847.     If (INTEGER006 > 1) Return
  848.     If (TSTRING039(1) == TSTRING029(1)) Then
  849.         If (TSTRING039(2) == Left(TSTRING029(5), 214)) Then
  850.             Gosub LABEL056
  851.             Select Case (STRING038)
  852.                 Case STRING037
  853.                     Gosub LABEL057
  854.                 Case STRING004
  855.                     If (Mid(TSTRING029(2), 2, 1) == "√") Then
  856.                         Copy PPEPath() + "RDSWALL.BTA", PPEPath() + "RDSBETA.BAK"
  857.                         FOpen 1, PPEPath() + "RDSBETA.BAK", 0, 0
  858.                         FCreate 2, PPEPath() + "RDSWALL.BTA", 1, 0
  859.                         FPutLn 2, "RDSWall v2.0ß Beta Test Configuration File"
  860.                         Gosub LABEL052
  861.                         FPutLn 2, STRING030 + "" + Mid(TSTRING029(2), 3, Len(TSTRING029(2)))
  862.                         Gosub LABEL053
  863.                         FPutLn 2, STRING032 + Mid(TSTRING029(3), 3, Len(TSTRING029(3)))
  864.                         FPutLn 2, TSTRING029(4)
  865.                         FPutLn 2, TSTRING029(5)
  866.                         FCloseAll
  867.                         Delete PPEPath() + "RDSBETA.BAK"
  868.                         STRING002 = 1
  869.                         Goto LABEL005
  870.                     Endif
  871.                 Case ""
  872.                     STRING031 = Left(TSTRING029(2), 1)
  873.                     Gosub LABEL051
  874.                     If (STRING030 == Month(Date())) Then
  875.                         STRING002 = 1
  876.                         INTEGER006 = 88
  877.                         Gosub LABEL049
  878.                         STRING030 = STRING030 + 1
  879.                         STRING041 = STRING030 + "/" + STRING032 + "/" + Right(STRING027, 2)
  880.                         Log "ßß BETA TEST ends " + STRING041 + " ßß", 0
  881.                         Goto LABEL005
  882.                     Endif
  883.                     If (STRING030 + 1 == Month(Date())) Then
  884.                         :LABEL049
  885.                         STRING033 = Left(TSTRING029(3), 1)
  886.                         STRING034 = Mid(TSTRING029(3), 2, 1)
  887.                         STRING036 = STRING033
  888.                         Gosub LABEL055
  889.                         STRING032 = STRING035
  890.                         STRING036 = STRING034
  891.                         Gosub LABEL055
  892.                         STRING032 = STRING032 + STRING035
  893.                         If (INTEGER006 == 88) Return
  894.                         If (STRING032 > Day(Date())) Then
  895.                             STRING002 = 1
  896.                             STRING041 = STRING032 - Day(Date())
  897.                             STRING041 = String(STRING041)
  898.                             Log "ßß BETA TEST ends in " + STRING041 + " day(s)! ßß", 0
  899.                             Goto LABEL005
  900.                         Endif
  901.                         If (STRING032 == Day(Date())) Then
  902.                             STRING002 = 1
  903.                             Log "ßß BETA TEST ends today ßß", 0
  904.                             Goto LABEL005
  905.                         Endif
  906.                         If (STRING032 < Day(Date())) Then
  907.                             :LABEL050
  908.                             Log "ßß BETA TEST period expired! ßß", 0
  909.                             STRING040 = Asc(Left(STRING003, 1))
  910.                             If (Len(STRING040) < 2) STRING040 = "00" + STRING040
  911.                             If (Len(STRING040) < 3) STRING040 = "0" + STRING040
  912.                             STRING040 = STRING040 + "99"
  913.                             STRING040 = STRING040 + STRING004
  914.                             FCreate 5, PPEPath() + "WALLBETA.MES", 2, 0
  915.                             FPutLn 5, "Dear @USER@,"
  916.                             FPutLn 5, "        You are recieving this message because you have completed the 30"
  917.                             FPutLn 5, "day BETA TEST of RDSWall.  First of all I want to thank you for helping"
  918.                             FPutLn 5, "me to BETA TEST this program!  Without people like you I would have a"
  919.                             FPutLn 5, "hard time finding any problems or suggestions!  Now that you have"
  920.                             FPutLn 5, "finished the BETA TESTing I look forward to recieving your report!  Oh,"
  921.                             FPutLn 5, "please include your BBS Name and number in your report.  If you would like"
  922.                             FPutLn 5, "to register RDSWall please do all of the following:"
  923.                             FPutLn 5, ""
  924.                             FPutLn 5, "1) Send a $3.00 REGISTRATION fee with the filled out RDSwall order form"
  925.                             FPutLn 5, "2) Call The Realm of Delirium BBS with your BETA TEST report"
  926.                             FPutLn 5, "3) INCLUDE YOUR PERSONAL BETA TEST CODE WITH YOUR REPORT"
  927.                             FPutLn 5, ""
  928.                             FPutLn 5, "        The lowered registration cost is my way of thanking you.  Your"
  929.                             FPutLn 5, "personal BETA TEST CODE is attached to the end of this message.  Also"
  930.                             FPutLn 5, "I am only able to offer you the discounted registration rate if you send"
  931.                             FPutLn 5, "me a full report with your BETA TEST CODE!"
  932.                             FPutLn 5, "                                         Sincerely,"
  933.                             FPutLn 5, "                                         Shane Kretzmann"
  934.                             FPutLn 5, "                                    AKA: Red Dragon"
  935.                             FPutLn 5, ""
  936.                             FPutLn 5, "Your Personal BETA TEST CODE is -=> " + STRING040 + " <=-"
  937.                             FPutLn 5, ""
  938.                             FClose 5
  939.                             Message 0, "SYSOP", "RDSWALL v1.1", "End of BETA TEST", "R", 0, 0, 0, PPEPath() + "WALLBETA.MES"
  940.                             Delete PPEPath() + "RDSWALL.BTA"
  941.                             Delete PPEPath() + "WALLBETA.MES"
  942.                             Goto LABEL002
  943.                         Endif
  944.                     Endif
  945.                     If (STRING030 + 1 < Month(Date())) Goto LABEL050
  946.                 Endif
  947.             Endif
  948.     End Select
  949.     Return
  950.     :LABEL051
  951.     If (STRING031 == "") STRING030 = "1"
  952.     If (STRING031 == "") STRING030 = "2"
  953.     If (STRING031 == "") STRING030 = "3"
  954.     If (STRING031 == "æ") STRING030 = "4"
  955.     If (STRING031 == "φ") STRING030 = "5"
  956.     If (STRING031 == " ") STRING030 = "6"
  957.     If (STRING031 == "") STRING030 = "7"
  958.     If (STRING031 == "") STRING030 = "8"
  959.     If (STRING031 == "") STRING030 = "9"
  960.     If (STRING031 == "■") STRING030 = "10"
  961.     If (STRING031 == "¥") STRING030 = "11"
  962.     If (STRING031 == "ß") STRING030 = "12"
  963.     Return
  964.     :LABEL052
  965.     If (Month(Date()) == 1) STRING030 = ""
  966.     If (Month(Date()) == 2) STRING030 = ""
  967.     If (Month(Date()) == 3) STRING030 = ""
  968.     If (Month(Date()) == 4) STRING030 = "æ"
  969.     If (Month(Date()) == 5) STRING030 = "φ"
  970.     If (Month(Date()) == 6) STRING030 = " "
  971.     If (Month(Date()) == 7) STRING030 = ""
  972.     If (Month(Date()) == 8) STRING030 = ""
  973.     If (Month(Date()) == 9) STRING030 = ""
  974.     If (Month(Date()) == 10) STRING030 = "■"
  975.     If (Month(Date()) == 11) STRING030 = "¥"
  976.     If (Month(Date()) == 12) STRING030 = "ß"
  977.     Return
  978.     :LABEL053
  979.     STRING032 = Day(Date())
  980.     If (Len(STRING032) == 1) Then
  981.         If (STRING032 == "1") STRING032 = "Γ"
  982.         If (STRING032 == "2") STRING032 = ""
  983.         If (STRING032 == "3") STRING032 = "╔"
  984.         If (STRING032 == "4") STRING032 = "α"
  985.         If (STRING032 == "5") STRING032 = ""
  986.         If (STRING032 == "6") STRING032 = ""
  987.         If (STRING032 == "7") STRING032 = "╗"
  988.         If (STRING032 == "8") STRING032 = ""
  989.         If (STRING032 == "9") STRING032 = "│"
  990.         Return
  991.     Endif
  992.     STRING035 = Left(STRING032, 1)
  993.     Gosub LABEL054
  994.     STRING035 = Mid(STRING032, 2, 1)
  995.     STRING032 = STRING036
  996.     Gosub LABEL054
  997.     STRING032 = STRING032 + STRING036
  998.     Return
  999.     :LABEL054
  1000.     If (STRING035 == "0") STRING036 = ""
  1001.     If (STRING035 == "1") STRING036 = "Γ"
  1002.     If (STRING035 == "2") STRING036 = ""
  1003.     If (STRING035 == "3") STRING036 = "╔"
  1004.     If (STRING035 == "4") STRING036 = "α"
  1005.     If (STRING035 == "5") STRING036 = ""
  1006.     If (STRING035 == "6") STRING036 = ""
  1007.     If (STRING035 == "7") STRING036 = "╗"
  1008.     If (STRING035 == "8") STRING036 = ""
  1009.     If (STRING035 == "9") STRING036 = "│"
  1010.     Return
  1011.     :LABEL055
  1012.     If (STRING036 == "") STRING035 = "0"
  1013.     If (STRING036 == "Γ") STRING035 = "1"
  1014.     If (STRING036 == "") STRING035 = "2"
  1015.     If (STRING036 == "╔") STRING035 = "3"
  1016.     If (STRING036 == "α") STRING035 = "4"
  1017.     If (STRING036 == "") STRING035 = "5"
  1018.     If (STRING036 == "") STRING035 = "6"
  1019.     If (STRING036 == "╗") STRING035 = "7"
  1020.     If (STRING036 == "") STRING035 = "8"
  1021.     If (STRING036 == "│") STRING035 = "9"
  1022.     Return
  1023.     :LABEL056
  1024.     STRING037 = Asc(Left(STRING003, 1))
  1025.     If (Len(STRING037) < 2) STRING037 = "00" + STRING037
  1026.     If (Len(STRING037) < 3) STRING037 = "0" + STRING037
  1027.     STRING036 = Left(TSTRING029(4), 1)
  1028.     Gosub LABEL055
  1029.     STRING038 = STRING035
  1030.     STRING036 = Mid(TSTRING029(4), 2, 1)
  1031.     Gosub LABEL055
  1032.     STRING038 = STRING038 + STRING035
  1033.     STRING036 = Mid(TSTRING029(4), 3, 1)
  1034.     Gosub LABEL055
  1035.     STRING038 = STRING038 + STRING035
  1036.     Return
  1037.     :LABEL057
  1038.     STRING036 = Mid(TSTRING029(4), 6, 1)
  1039.     Gosub LABEL055
  1040.     STRING038 = STRING035
  1041.     STRING036 = Mid(TSTRING029(4), 7, 1)
  1042.     Gosub LABEL055
  1043.     STRING038 = STRING038 + STRING035
  1044.     STRING036 = Mid(TSTRING029(4), 8, 1)
  1045.     Gosub LABEL055
  1046.     STRING038 = STRING038 + STRING035
  1047.     Return
  1048.     :LABEL058
  1049.     Goto LABEL001
  1050.  
  1051. ;------------------------------------------------------------------------------
  1052. ;
  1053. ; Usage report (before postprocessing)
  1054. ;
  1055. ; ■ Statements used :
  1056. ;
  1057. ;    4       Cls
  1058. ;    3       Wait
  1059. ;    158     Goto 
  1060. ;    314     Let 
  1061. ;    78      Print 
  1062. ;    45      PrintLn 
  1063. ;    183     If 
  1064. ;    2       DispFile 
  1065. ;    4       FCreate 
  1066. ;    13      FOpen 
  1067. ;    2       FAppend 
  1068. ;    15      FClose 
  1069. ;    6       FGet 
  1070. ;    55      FPutLn 
  1071. ;    1       StartDisp 
  1072. ;    1       GetUser
  1073. ;    4       Delete 
  1074. ;    8       Log 
  1075. ;    2       InputStr 
  1076. ;    36      Gosub 
  1077. ;    16      Return
  1078. ;    13      Delay 
  1079. ;    7       Inc 
  1080. ;    1       Stop
  1081. ;    78      AnsiPos 
  1082. ;    1       Message 
  1083. ;    2       SaveScrn
  1084. ;    2       RestScrn
  1085. ;    2       FDefIn 
  1086. ;    4       FDGet 
  1087. ;    2       Copy 
  1088. ;    4       FCloseAll
  1089. ;
  1090. ;
  1091. ; ■ Functions used :
  1092. ;
  1093. ;    7       /
  1094. ;    302     +
  1095. ;    21      -
  1096. ;    115     ==
  1097. ;    3       <>
  1098. ;    28      <
  1099. ;    12      <=
  1100. ;    10      >
  1101. ;    30      >=
  1102. ;    76      !
  1103. ;    23      &&
  1104. ;    11      ||
  1105. ;    28      Len(
  1106. ;    7       Upper()
  1107. ;    30      Mid()
  1108. ;    14      Left()
  1109. ;    2       Right()
  1110. ;    6       Ferr()
  1111. ;    8       Chr()
  1112. ;    8       Asc()
  1113. ;    2       Random()
  1114. ;    21      Date()
  1115. ;    3       Time()
  1116. ;    1       U_Name()
  1117. ;    15      Month()
  1118. ;    5       Day()
  1119. ;    4       Inkey()
  1120. ;    1       String()
  1121. ;    2       Mask_Ascii()
  1122. ;    1       PCBDat()
  1123. ;    34      PPEPath()
  1124. ;    1       ReadLine()
  1125. ;    1       GetToken()
  1126. ;    4       Exist()
  1127. ;    2       LangExt()
  1128. ;    3       GetY()
  1129. ;    1       PPEName()
  1130. ;
  1131. ;------------------------------------------------------------------------------
  1132. ;
  1133. ; Analysis flags : d
  1134. ;
  1135. ; d - Access PCBOARD.DAT ■ 2
  1136. ;     Program gets the full pathname to PCBOARD.DAT, this may be usefull
  1137. ;     for many PPE so they can find various informations on the system
  1138. ;     (system paths, max number of lines in messages, ...) but it may also
  1139. ;     be a way to gather vital informations.
  1140. ;     ■ Search for : PCBDAT()
  1141. ;
  1142. ;------------------------------------------------------------------------------
  1143. ;
  1144. ; Postprocessing report
  1145. ;
  1146. ;    11      For/Next
  1147. ;    0       While/EndWhile
  1148. ;    47      If/Then or If/Then/Else
  1149. ;    1       Select Case
  1150. ;
  1151. ;------------------------------------------------------------------------------
  1152. ;                 AEGiS Corp - Break the routines, code against the machines!
  1153. ;------------------------------------------------------------------------------
  1154.